home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-07-23 | 815 b | 47 lines | [TEXT/KAHL] |
- /***************************************
- * matrix.cp
- * matrix template class implementations
- ***************************************/
-
- #include "matrix.h"
- #include <iomanip.h>
-
- template <class Number>
- matrix<Number>::matrix()
- {
- int i,j;
- Number zero(0); // initialize any type of Number to zero
-
- for(i=0;i<4;i++)
- for(j=0;j<4;j++)
- m[i][j] = zero;
- }
-
- template <class Number>
- matrix<Number> matrix<Number>::operator*(const matrix<Number> mat)
- {
- matrix<Number> result;
- int i,j,k;
-
- for(i=0;i<4;i++)
- for(j=0;j<4;j++)
- for(k=0;k<4;k++)
- result.m[i][j] += m[i][k] * mat.m[k][j];
- return result;
- }
-
- template <class Number>
- ostream& operator<<(ostream& os, const matrix<Number>& mat)
- {
- int i,j;
-
- for(i=0;i<4;i++)
- {
- for(j=0;j<4;j++)
- os << setw(10) << mat(i,j);
- os << endl;
- }
- return os;
- }
-
-